package de.koller.enc.input;

import de.koller.enc.ENode;
import de.koller.oceanFramework.gl.util.InputGL;
import de.koller.oceanFramework.tree.Child;
import java.util.List;
import java.util.Set;

public class EInput extends ENode {
	
	@Child private final InputGL input = new InputGL();

	public void unGrabMouse() {
		input.unGrabMouse();
	}

	public boolean isMouseReleased( int button ) {
		return input.isMouseReleased( button );
	}

	public boolean isMousePressed( int button ) {
		return input.isMousePressed( button );
	}

	public boolean isMouseDown( int mouseButton ) {
		return input.isMouseDown( mouseButton );
	}

	public boolean isKeyReleased( int key ) {
		return input.isKeyReleased( key );
	}

	public boolean isKeyPressed( int key ) {
		return input.isKeyPressed( key );
	}

	public boolean isKeyDown( int key ) {
		return input.isKeyDown( key );
	}

	public void grabMouse() {
		input.grabMouse();
	}

	public Set<Integer> getPressedKeys() {
		return input.getPressedKeys();
	}

	public int getMouseY() {
		return input.getMouseY();
	}

	public int getMouseX() {
		return input.getMouseX();
	}

	public float getMouseScaledY() {
		return input.getMouseScaledY();
	}

	public float getMouseScaledX() {
		return input.getMouseScaledX();
	}

	public int getMouseDY() {
		return input.getMouseDY();
	}

	public int getMouseDX() {
		return input.getMouseDX();
	}

	public int getDMouseWheel() {
		return input.getDMouseWheel();
	}

	public List<Character> getCharactersPressed() {
		return input.getCharactersPressed();
	}
	
}
